package org.ytor.core.sysapi.role.resp;

import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ytor.common.util.tree.ITree;
import org.ytor.core.model.BaseResp;
import org.ytor.core.sysapi.role.model.SysRolePermission;

import java.util.List;

/**
 * created by yangtong on 2025/4/8 14:09:51
 * <br/>
 * 角色-资源关系
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class SysRolePermissionResp extends BaseResp<SysRolePermission, String> implements ITree<SysRolePermissionResp> {
    /**
     * 角色id
     */
    private String roleId;

    /**
     * 角色编码
     */
    private String roleCode;

    /**
     * 资源id
     */
    private String permissionId;

    /**
     * 父资源id
     */
    private String pid;

    /**
     * 用户编码
     */
    private String permissionCode;

    /**
     * 资源名称
     */
    private String permissionName;

    /**
     * 是否有子数据
     */
    private Boolean hasChildren;

    /**
     * 子数据
     */
    private List<SysRolePermissionResp> children;

    @Override
    public String getKey() {
        return permissionName;
    }

    @Override
    public void hasChildren(Boolean hasChildren) {
        this.hasChildren = hasChildren;
    }
}
